import service from "../service.js";
import contentType from "@/common/config/content-type";

/** 公共前缀地址 */
const baseUrl = "/purchaseOrder/";

/**
 * 分页查询
 * @param {*} parameter 请求参数
 * @param {*} pagination 分页参数
 * @returns
 */
const selectPage = (parameter, pagination) => {
  const config = {
    type: contentType.Json,
    params: { ...pagination },
  };
  return service.post(baseUrl + "selectPage", parameter, config);
};

/**
 * 新增采购订单
 * @param {*} parameter 请求参数
 * @returns
 */
const insertPurchaseOrder = (parameter) => {
  const config = {
    type: contentType.Json,
    loadon: true,
  };
  return service.post(baseUrl + "insertPurchaseOrder", parameter, config);
};

/**
 * 修改 采购订单 主表信息
 * @param {*} parameter 请求参数
 * @returns
 */
const update = (parameter) => {
  const config = {
    type: contentType.Json,
    loadon: true,
  };
  return service.put(baseUrl + "update", parameter, config);
};

/**
 * 通过采购订单编号查询采购订单详情
 * @param {*} parameter 请求参数
 * @returns
 */
const queryInfoByPurchaseOrderNumber = (parameter) => {
  const config = {
    type: contentType.Form,
    loadon: true,
    params: { ...parameter },
  };
  return service.get(baseUrl + "queryInfoByPurchaseOrderNumber", config);
};

/**
 * 获取单个采购订单
 * @param {*} parameter 请求参数
 * @returns
 */
const queryOneByPurchaseOrderNumber = (parameter) => {
  const config = {
    type: contentType.Form,
    loadon: true,
    params: { ...parameter },
  };
  return service.get(baseUrl + "queryOneByPurchaseOrderNumber", config);
};

/**
 * 获取最大已使用编号
 * @param {*} parameter 请求参数
 * @returns
 */
const getMaxUsedSerialNumber = (parameter) => {
  const config = {
    type: contentType.Form,
  };
  return service.post(baseUrl + "getMaxUsedSerialNumber", parameter, config);
};

/** 采购管理-采购订单-记录主表 */
export default {
  selectPage,
  insertPurchaseOrder,
  queryOneByPurchaseOrderNumber,
  update,
  queryInfoByPurchaseOrderNumber,
  getMaxUsedSerialNumber,
};
